home *** CD-ROM | disk | FTP | other *** search
- Copyright (C) 1990 Free Software Foundation, Inc.
-
- This file is part of Oleo, the GNU Spreadsheet.
-
- Oleo is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 1, or (at your option)
- any later version.
-
- Oleo is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Oleo; see the file COPYING. If not, write to
- the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-
- Note that oleo still generates lots of warning messages. They can usually
- be ignored. In patictlar, all the complaints about unreached statements in
- eval.c, and the complaints about too-large floating-point numbers can be
- ignored.
-
- System Dependent Configuration
-
- If your _doprnt() doesn't correctly interpret %+d you may hve to use the
- one from the freed 4.3 BSD sources. (Included.)
-
- If you don't have random(), you will have to use the one from the freed 4.3 BSD
- sources. (Also included.)
-
-
- System configuration options:
- -DSYSV
- Define this if you are using any version of System Five.
- This causes oleo to expect the SysV version of curses and
- the SysV terminal driver.
-
- -DNO_UALARM
- Define this if your system lacks the ualarm() system call.
-
- -DSETITIMER
- Define this if your system lacks ualarm(), but has
- setitimer(). (Also define -DNO_UALARM.)
-
- -DNO_RINT
- Define this if your C math library does not have the rint()
- function. This is needed on most SysV and MSDOS systems.
-
- -DNO_RENAME
- Define this if your system lacks the rename() system call.
-
- -DNEED_VPRINTF
- Define if your system lacks vprintf(), vfprintf(), and vsprintf(),
- but does have a working _doprnt(). If you lack both _doprnt(), and
- the v*printf() functions, you'll have to write your own replacements.
-
- -DI_IOCTL
- This option causes io_term.c to #include <sys/ioctl.h>, which contains
- the information needed to turn on asyncronous IO on HPUX systems.
-
- -DI_STDTYPES
- This option causes oleo to include <sys/stdtypes.h>
- This is needed on some sunos 4.1 systems.
-
- -DI_STDDEF
- This option causes oleo to include <stddef.h> This should be used on
- __STDC__ compliant systems.
-
- -DI_SYSTYPES
- This option causes oleo to include <sys/types.h>, and should be used
- on non-ansi systems.
-
- Compile-time options:
-
- -DA0_REFS
- if Oleo is compiled with this option, it will use Visi-Calc
- style cell references [A-ZZZ]nnn, instead of the default,
- which is Multiplan style RxxCyy.
-
- -DSPLIT_REFS
- Instead of using the current reference-counting shared
- reference-structures, use a (simpler) (but usually slower!)
- one-structure-per-cell scheme. This is usually only for
- debugging the spreadsheet.
-
- -DTEST
- Include code for debugging-mode, and also include lots of
- internal-consistency checks, etc. Defining this usually
- doesn't hurt, except on MS-LOS, where every byte counts.
-
- -DUSE_DLD
- If you're on a BSD system, oleo can be compiled to
- dynamically load the functions that implement
- the save-file formats,
- spreadsheet formula functions,
- spreadsheet keyboard functions,
- and the spreadsheet keymaps.
- Unfortunately, this code only works on BSD systems.
-
- Before you can use dld with oleo, you will need to apply the
- patch found in 'dld.pch'.
-
- If you don't have dld, it can be obtained by anonymous FTP from
- prep.ai.mit.edu and probably other archive sites as well.
-
- -DREVERSE
- This option causes oleo to reverse the internal representation that
- it uses for storing rows and columns. It is intended mainly for
- debuggind and performance testing.
-
- -DSMALLEVAL
- This option is intended to allow eval.c to compile on MS-LOS machines
- where the compiler would otherwise run out of memory.
-
- -DBITS_PER_CELLREF=16
- If this option is used, oleo uses 16-bit integers for cell addresses
- instead of 8-bit ones. 65535 rows and columns should be more than
- enough for most purposes, especially since no 32-bit machine will
- have enough virtual memory to fill that region.
-
-
- To compile on a BSD system:
-
- Decide if you want to use Multiplan style RdigitCdigit or VisiCalc
- style LETTERSdigits style cell references. If you prefer the latter, modify
- the Makefile to include -DA0_REFS on the CFLAGS line.
-
- If you're using Multiplan style references, find out if you _doprnt()
- routine supports %+d correctly. Decimal numbers printed with this format
- should have either a + sign (if positive) or a -sign (if negative). If you
- _doprnt() is broken, you may be able to use one from the free 4.3BSD
- distribution. A copy of that file is included in this distribution.
-
- Find out if your C compiler can handle large switch statements. GCC
- (with Gas) can. Some other compilers can't. Some of those that can't
- actually bother to tell you that they're producing incorrect code. If your
- compiler doesn't, the spreadsheet will crash by branching to a semi-random
- location in eval_expression(). If your compiler has this problem, compile
- eval.c with the -DSMALLEVAL option.
-
- If you can't get the definitions of __plinf or, __neinf past your
- compiler, you may have to resort to assembly language.
- Aside from the details above, you should simply be able to type
- 'make', and oleo should build.
-
-
- To compile on a MS-DOS system with Turbo C version 2.0:
-
- Copy all the files to your PC.
-
- Convert the files from UNIX ^J terminated lines to MS-DOS ^M^J
- terminated lines.
-
- Decide what to do about cell references, as above. Modify
- makefile.trc to include -DA0_REFS if appropriate.
-
- Type 'make -f makefile.trc'. This makefile is sufficiently
- simple that even Turbo C's wimpy make should be able to deal with it.
-
-
- To compile on a SYSV system:
-
- Follow the instructions for a BSD system, but include -DSYSV in the
- CFLAGS line. Oleo on a pure SYSV system is *not* well tested.
-
-